ON ERROR VDU4:REPORT:PRINT ERL:END

DIM block% 1024

Menu%=FNswi_number("Director_Menu")
EndMenu%=FNswi_number("Director_EndMenu")
Option%=FNswi_number("Director_Option")
Command%=FNswi_number("Director_Command")
Dash%=FNswi_number("Director_Dash")
XOS_ReadVarVal%=FNswi_number("XOS_ReadVarVal")
XOS_SetVarVal%=FNswi_number("XOS_SetVarVal")

SYS "OS_GetEnv" TO comm%
SYS "OS_ReadArgs","name,quit,,,",comm%,block%,1023
path$=FNstring(block%!8)
file$=FNstring(block%!12)

PROCset("Director$Menu","CVS")
*Set Alias$DirectorCVSDo Dir %0|mTaskWindow "cvs %*2 %1" -name "cvs %*2" -wimpslot 4096K -quit|mX Back
REM *Set Alias$DirectorCVSDo echo cvs %*2 %1
SYS "XOS_File",17,path$+"."+file$ TO o%
IF o%=2 OR o%=3 THEN path$=path$+"."+file$:file$="":fileopt$="" ELSE fileopt$="-file "+file$
SYS Menu%, "CVS -temp"
  SYS Option%, "Add"
REM -sub ""Dynamic:/Director:Menus.Files.CVSSubMenu -path "+path$+" -command add "+fileopt$+""""
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" add"
  SYS Option%, """Admin -kb"""
REM -sub ""Dynamic:/Director:Menus.Files.CVSSubMenu -path "+path$+" -command admin "+fileopt$+" -options kb"""
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" admin -kb"
  SYS Option%, "Commit"
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" commit"
  SYS Option%, "Diff"
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" diff"
  SYS Option%, "Log"
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" log"
  SYS Option%, """Remove -f"""
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" remove -f"
  SYS Option%, """Status -v"""
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" status -v"
  SYS Option%, """Update -Pd"""
    SYS Command%, "DirectorCVSDo "+path$+" "+file$+" update -Pd"
SYS EndMenu%
END

DEF FNstring(ptr%):LOCAL a$:a$=""
WHILE ?ptr%>31
  a$+=CHR$(?ptr%):ptr%+=1
ENDWHILE:=a$

DEF FNswi_number(name$)
  SYS &39,,name$ TO A%
=A%

DEF FNread(var$):LOCAL s%
SYS XOS_ReadVarVal%,var$,block%,1023 TO ,,s%
=FNstring_s(block%,s%)

DEF PROCset(var$,value$)
SYS XOS_SetVarVal%,var$,value$,LEN(value$)
ENDPROC
